dynamic scoping in c